home *** CD-ROM | disk | FTP | other *** search
/ MacTech 1 to 12 / MacTech-vol-1-12.toast / Source / MacTech® Magazine / Volume 06 - 1990 / 06.01 Jan 90 / XDemo Source / XDemo.h < prev    next >
Encoding:
C/C++ Source or Header  |  1989-08-04  |  1.5 KB  |  73 lines  |  [TEXT/MPS ]

  1. /*---- XDemo.h -------------------
  2. by Mark Lankton, 1989, for MacTutor
  3. */
  4.  
  5. /*----- typedefs ---------------*/
  6. /*
  7. This is the (dirt-simple) structure which allows communication
  8. with the external functions. You can get very fancy here.
  9. */
  10. typedef struct XTRABlock{
  11.         int            dataLength;
  12.         short        *theData;
  13.         }XTRABlock,*XTRABlockPtr,**XTRABlockHandle;
  14.  
  15. /*------ defines ---------------*/
  16. #define        appleID        128
  17. #define        fileID        129
  18. #define        editID        130
  19. #define        externalsID    131
  20.  
  21. #define     menuCount    4
  22.  
  23. #define        appleMenu    1
  24. #define        aboutMeItem    1
  25.  
  26. #define        fileMenu    2
  27. #define        newItem        1
  28. #define        closeItem    2
  29. #define        quitItem    3
  30.  
  31. #define        editMenu        3
  32. #define        undoItem        1
  33. /*item 2 is a dividing line */
  34. #define        cutItem            3
  35. #define        copyItem        4
  36. #define        pasteItem        5
  37.  
  38. #define     externalsMenu    4
  39.  
  40. #define        aboutID        128
  41.  
  42. #define     TRUE     0xFF
  43. #define     FALSE     0x00
  44. #define        minWidth        200
  45. #define     minHeight        80
  46. #define        mBarHeight        20
  47. #define        scrollBarAdjust    15
  48.  
  49. #define    osEvent                    app4Evt    
  50. #define    suspendResumeMessage    1        
  51. #define    resumeMask                1        
  52. #define    mouseMovedMessage        0xFA    
  53.  
  54. /*---------- globals -------------*/
  55. Boolean            allDone;
  56. Boolean            inBackground;
  57.  
  58. /*The array of MenuHandles
  59. is 1-based. */
  60. MenuHandle        myMenus[menuCount + 1];    
  61. EventRecord        myEvent;
  62. WindowPtr        theWindow;
  63. Rect            screenRect,defaultWRect;
  64. Rect            dragRect;
  65. RgnHandle        eventRgn;
  66. long            sleepTime;
  67.  
  68. /*The array of Handles to the external
  69. functions is 1-based, too, to match up
  70. with the menu item numbers. */
  71. Handle            XTRAArray[33];        /*1-based array!*/
  72. short            *screenData;        /*Our data buffer. */
  73. int                screenDataLength;